//
// Created by Admin on 2022/5/12.
//

#ifndef WIN_HELPER_DISPLAY_MONITOR_H
#define WIN_HELPER_DISPLAY_MONITOR_H
#include <windows.h>
#include <vector>

struct DisplaySettings {
	bool isPrimary = false;
	int x;
	int y;
	int width;
	int height;
};

/* 显示器信息,用于支持多屏的时候获取参数信息 */
class DisplayMonitor {
public:
	DisplayMonitor();

	/* 获取显示器数量 */
	std::vector<DisplaySettings> getDisplayMonitors();

protected:
	static BOOL enumDisplayMonitorCallBack(HMONITOR hMonitor,HDC hdcMonitor,LPRECT lprcMonitor,LPARAM dwData);

private:
	int display_monitors_;

	std::vector<DisplaySettings> display_settings_vec_;
};



#endif //WIN_HELPER_DISPLAY_MONITOR_H
